package com.ruoyi.subject.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excels;

import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.domain.entity.SysUser;

/**
 * 课题经费对象 subject_funds
 * 
 * @author yepanpan
 * @date 2021-03-15
 */

@ApiModel("课题经费实体")
@Data
public class SubjectFunds extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增长主键ID */
    @ApiModelProperty("${comment}")
    private Long id;

    /** 课题ID */
    @ApiModelProperty("课题ID")
    private Long taskId;
    
    @Excels({
    	@Excel(name = "课题", targetAttr = "name")
    })
    private SubjectTask task;

    /** 金额 */
    @Excel(name = "金额")
    @ApiModelProperty("金额")
    private BigDecimal money;

    /** 申请原由 */
    @Excel(name = "申请原由")
    @ApiModelProperty("申请原由")
    private String reason;

    /** 申请说明 */
    @Excel(name = "申请说明")
    @ApiModelProperty("申请说明")
    private String comment;

    /** 审核人 */
    @ApiModelProperty("审核人")
    private Long checkUserId;

    /** 审核结果 */
    @Excel(name = "审核结果", dictType = "check_status")
    @ApiModelProperty("审核结果")
    private String checkStatus;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("审核时间")
    private Date checkTime;

    /** 审核不通过原因 */
    @Excel(name = "审核不通过原因")
    @ApiModelProperty("审核不通过原因")
    private String checkReason;

    /** 是否到位 */
    @Excel(name = "是否到位", dictType = "sys_yes_no")
    @ApiModelProperty("是否到位")
    private String isReach;

    /** 到位时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "到位时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("到位时间")
    private Date reachTime;

    /** 到位说明 */
    @Excel(name = "到位说明")
    @ApiModelProperty("到位说明")
    private String reachComment;

    @Excels({
    	@Excel(name = "申请人", targetAttr = "nickName")
    })
    private SysUser applyUser;

}
